package com.itheima.lambda.test2;
/*
.编写一个接口（ShowHandler）

2. 在该接口中存在一个抽象方法（show），该方法是无参数无返回值
3. 在测试类（ShowHandlerDemo）中存在一个方法（useShowHandler）
    方法的的参数是ShowHandler类型的
    在方法内部调用了ShowHandler的show方法
4.在main方法中使用匿名内部类和lambda分别来调用useShowHandler
 */
public class ShowHandlerDemo {
    public static void main(String[] args) {
        //匿名内部类完成 把 声明清楚的方法声明清楚
        useShowHandler(() -> System.out.println("这里是匿名内部类中的show方法"));

        //在使用lambda完成  把没有声明清楚的方法 声明清楚
        useShowHandler(()->{
            System.out.println("这里是lambda表达式的写法");

        });

    }
    //主动写一个方法 使用lambda的方法 , 使用匿名内部类的准备工作
    public static void useShowHandler(ShowHandler handler){
        handler.show();
    }
}
interface ShowHandler{
    void show();
}